Generic of doubly selective channel emulator, locally non-stationary in time, nonstationary in frequency, with non-separable dispersion function

ABSTRACT

Currently, wideband channel simulation/emulation is carried out through channel realizations obtained from dispersion functions dictated by communication standards, in order to perform the tests and validation of the new data communication schemes. However, the channel models available in the state of the art only consider the simulation/emulation of stationary channels with separable dispersion characteristics, allowing only the treatment of unrealistic channels. The present invention describes and details a method and apparatus for performing the channel simulation/emulation in scenarios where the channel is doubly selective, i.e., selective in time and frequency, where the simulation/emulation is of an arbitrarily long duration, and for a channel that is locally non-stationary in time, not stationary in frequency and with a non-separable dispersion function. To solve this, the orthogonalization technique of the channel is used in conjunction with a windowing scheme in order to generate arbitrarily long realizations of doubly dispersive channels.

FIELD OF THE INVENTION

The present invention is related to the field of telecommunications; specifically, to the implementation of doubly dispersive broadband channel simulators/emulators capable of reproducing the non-stationarity observed in a reduced time interval. Moreover, the development presented in the present invention considers that the propagation paths arriving at the receiver can be correlated. This development will make it possible to test systems or wireless communication devices more realistically.

The constant search for the improvement of protocols and data communication schemes, due to the growing and massive demand by users of voice, data and video services, creates the need to have devices capable of performing the evaluation and validation of the new communications systems in order to help its early release to the market. In data communication systems (wired and wireless), this responsibility falls on test and validation tools such as channel simulators/emulators, which seek to simulate/emulate the propagation conditions of a communication channel. In this context, the term “simulator” refers to an implementation in programming technology or software, while the term “emulator” refers to an implementation of the physical type or hardware.

The objective of channel simulators/emulators is to reproduce propagation environments with temporal, frequency, and/or spatial selectivity, demonstrating that they are capable of introducing distortions with a high level of accuracy and whose statistical behavior is determined by predefined functions employed to represent the communications channel. In other words, they generate additive noise and multiplicative noise, which are characterized by stochastic processes (channel realizations) with a certain correlation. However, the simulation/emulation of real channels must consider the reproduction of the highly changing behavior of the channel over time, i.e., the channel is non-stationary since the channel statistics change as the receiver or transmitter moves in time and distance, and along the propagation environment where the link between transmitters and receivers is being carried out. Therefore, for the new communication systems where there is very high mobility, such as vehicle-to-vehicle (V2V) schemes, 60 GHz systems or in the Terahertz band, 4G and 5G systems, etc., the channels simulators/emulators must be able to reproduce the non-stationarity existing locally within the transmitted symbols or frames, according to a certain communication standard. Likewise, channel simulators/emulators must consider that the trajectories by which the transmitted data travel to and reach the receiver can be correlated, so to assume de-correlation between the trajectories is no longer valid for real channels.

BACKGROUND OF THE INVENTION

In a wireless communications system, the signals traveling from the transmitter to the receiver experience diffraction, refraction and reflection, which in general cause the transmitted wave front to be dispersed on multiple wave fronts; as a consequence several signal replicas transmitted reach the receiver. Because the different replicas received, in general, traveled through different paths, the channels with this phenomenology are referred to as multipath. The signals that pass through different trajectories suffer in general from different distortions, so the received signal is a conglomerate of phenomena that can only be analyzed statistically.

With the aforementioned phenomenology, the multipath communications system can be characterized by the following equation:

$\begin{matrix} {{{y(t)} = {\sum\limits_{n = 0}^{N{(t)}}{{A_{n}(t)}{u\left( {t - {r_{n}(t)}} \right)}{\cos \left( {w_{c}\left( {t - {r_{n}(t)}} \right)} \right)}}}},} & (I) \end{matrix}$

where u(t) represents the transmitted signal, y(t) the received signal, N(t) is the number of the paths which is time variant, A_(n)(t) is the gain of each path, and r_(n)(t) represents the time variant delay of each trajectory.

Considering a simplification of the previous model for its adequate treatment, it is considered the assumption of maintaining constant or fixed the number of trajectories that arrive at the receiver, N. Also, the delay value r_(n)(t) is assumed as constant r_(n) due to the rate of change in the delay value is considerably small and therefore the value is almost constant with respect to the symbol or frame transmission rate according to the communication scheme. With the simplifications mentioned, the model of the received signal can be represented as:

$\begin{matrix} {{{y(t)} = {{\sum\limits_{n = 0}^{N - 1}{A_{n}(t)}} - {{u\left( {t - \gamma_{n}} \right)}{\cos \left( {{\left( {w_{c} - v_{n}} \right)t} - \theta_{n}} \right)}}}},} & ({II}) \end{matrix}$

where τ_(n), v_(n), y θ_(n) correspond to the delay, frequency change and phase change, respectively, of the carrier of the n-th path with respect to the waveform of the transmitted signal.

Assuming that a Dirac delta function is transmitted, the received signal represents the impulse response of the channel. In its well-known baseband representation, denoted as C(t; τ), the impulse response results in the following expression:

$\begin{matrix} {{C\left( {t;\tau} \right)} = {\sum\limits_{n = 0}^{N - 1}\; {{A_{n}(t)}{\delta \left( {t - \tau_{n}} \right)}e^{{- {jv}_{n}}t}{e^{{- j}\; \theta_{n}}.}}}} & ({III}) \end{matrix}$

The aforementioned parameters are dependent on the propagation conditions and are considered as random, so that C(t; τ) is a two-dimensional stochastic process, which requires its statistical description in order to fully characterize it. However, it is common to consider that the variations given by A_(n)(t), are due to the fades suffered by the signals due to the loss of amplitude the waves experience when passing through the propagation medium, known as loss by propagation (path loss), and which is dependent on the distance between the transmitter and the receiver, and that its random fluctuation around the mean value depends on the obstacles that the waves face when were refracted and diffracted by large obstacles such as buildings, trees, etc.; this results in changes in the received power in orders of 10 dB in resolution range of 100λ-20λ, denominated as large scale fading [REF1].

In addition, in ranges less than 20λ there is a fading associated with the constructive and destructive sum of the multipath components, denoted as small-scale fading, which can produce fading of the amplitude of the received signal and y(t) in the range of 40 dB (10 dB above and 30 dB below the average power of the signal) in ranges as small as λ/2. Therefore, it is feasible to separate these variations as C(t; τ)=A(t)Σ_(n=0) ^(N-1)δ(t−τ_(n))e^(−jv) ^(n) ^(t)e^(−jθ) ^(n) .

An example of fluctuations in y(t) is shown in FIG. 1, where it can be seen the fading of the signal at different ranges.

Now, considering that for a time interval T_(local)(in ranges of 20λ to 40λ [REF3]) the channel can be assumed with a constant value for A(t), then the fluctuations of the channel will be due to the sum of the multipaths. Considering further that there are a large number of trajectories (in practice, greater than 7 for each identifiable delay) it is feasible to arrive at the following channel model in its baseband representation for small-scale fading:

$\begin{matrix} {{{c_{bb}\left( {t;\tau} \right)} = {\sum\limits_{m = 0}^{M - 1}\; {{\mu_{m}(t)}{\delta \left( {\tau - \tau_{m}} \right)}}}},} & ({IV}) \end{matrix}$

where M represents the number of significant delays, and μ_(m)(t) corresponds to a complex Gaussian stochastic process. This model was obtained considering that the sum of a sufficient number of sinusoids with random phase results in a Gaussian process [REF1]. In order to reproduce channel realizations that produce distortions similar to those produced by the real channel, it is necessary to have the correlation function of (IV) and to be able of producing two-dimensional stochastic processes with that precise computed correlation function; that is, it should be calculated:

R _(c) _(bb) (t,s;τ,ξ)=E{c _(bb)(t;τ)c _(bb)*)(s;ξ)},  (V)

where s y ξ are auxiliary variables of time and time-delay, respectively.

Currently, the state of the art of simulators and channel emulators seek to reproduce the statistics of the communications channel considering it as stationary at all times of simulation and with a decorrelated dispersion function [REF2]. In these conditions, (V) for the model expressed in (IV) it can be represented as:

$\begin{matrix} {{{R_{c_{bb}}\left( {{\Delta \; t};\tau} \right)}_{est} = {\sum\limits_{m = 0}^{M - 1}\; {{R_{m}\left( {\Delta \; t} \right)}{\delta \left( {\tau - \tau_{m}} \right)}}}},} & ({VI}) \end{matrix}$

where Δt=t−s. Obtaining the Fourier transform of (VI) with respect to the variable Δt, it results in the channel's scattering function, S(v,τ), as follows:

$\begin{matrix} {{S\left( {v,\tau} \right)} = {\sum\limits_{m = 0}^{M - 1}\; {{S_{m}(v)}{\delta \left( {\tau - \tau_{m}} \right)}}}} & ({VII}) \end{matrix}$

where v is the frequency dispersion in the Doppler domain.

As well-known useful definitions, it can be named the Power Delay Profile (PDP), denoted as P(z), which is the one-dimensional function obtained from integrating (VII) with respecto to the variable v; while S(v) is the Doppler power spectral density, (DPSD) denoted as S(v).

The wideband channels that allow to express their dispersion function separable by the multiplication of two independent density functions, have their scattering function defined as a Separable Scattering Function (SSF), as it is shown as follows:

S(v,τ)=P(τ)S(v),  (VIII)

this means that in each delay value T the same Doppler spectral density is observed S(v), only with different average power given by the delay power profile P(τ).

Likewise, doubly selective channels which have a non-separable scattering function (NSSF), describe jointly the average power density observed for a given value of delay time and Doppler frequency (v,τ). In this way, a NSSF dispersion function is more representative for a real channel, therefore the dispersion function S(v,τ) cannot be expressed in terms of the multiplication of two independent distributions as in equation (VIII).

The aforementioned simplifications allow reducing the statistical information of a tensor, R_(c) _(bb) (t, s; τ, ξ) to a two-dimensional function R_(c) _(bb) (Δt; τ)_(est), or its equivalent in Fourier, the dispersion function. This simplification is the used in the approaches followed by the commercial implementations for channel emulators, which are currently based only on methods of simulation for channels with SSF, which are even only stationary. Therefore, they cannot simulate real channels because the DPSDs that can be reproduced, are the same at each time delay value r and simulation time.

However, numerous measurements have indicated the need to contemplate non-stationarity of the channel in a relatively short time interval in order to make a channel simulator/emulator more realistic. In this scenario, either both the SSF or NSSF dispersion functions, vary over time. Hence, the dispersion function will evolve over time S(t; v, τ) according to a propagation environment with non-stationary statistics. Furthermore, this non-stationarity must be considered due to the fact that the dispersion function, for the most realistic case, is non-separable, and even that the trajectories are non-decorrelated for different time-delays.

BRIEF DESCRIPTION OF THE INVENTION

In the present invention, a new communication channel simulation/emulation method and apparatus for generating channel realizations with NSSF where statistics are non-stationary and the multipaths can be correlated, is presented. The invention is based on the concatenation of independent sequences of channel realizations made from the Karhunen-Loève expansion method (KLE), which are parameterized based on an analysis made of the orthogonalization of the channel with NSSF dispersion function. The present invention makes use of the orthogonalization technique of the communications channel, which was also used in our invention called “Emulador de Canal Doblemente Selectivo, estacionario o No-estacionario en tiempo, con Función de Dispersión No-Separable”. It should be mentioned that the cited patent also focuses on the simulation/emulation of non-stationary channels and with non-separable dispersion function; however, such patent considers stationarity in the statistics within a certain time interval, whereas the invention presented in this document, considers that the statistics are locally non-stationary.

Likewise, the concatenation of the stochastic processes generated by the emulator presented in the present invention is obtained by means of the method presented in our patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria”.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 shows an example of the variations of power received in a channel with multipath, with different observation ranges.

FIG. 2 shows an example of the non-separable dispersion function of a doubly dispersive communications channel in time-delay τ and Doppler frequency v.

FIG. 3 shows an example of a discrete delay power profile P(τ).

FIG. 4 illustrates the universal power profile, which is used to obtain a super space to apply the channel orthogonalization technique.

FIG. 5 shows the correlation tensor R_(h) _(bb) (t,s; τ, ξ) in the domain of Doppler frequencies v and v, for the frequency value v=v₁, and the reduction that is made in the dimensionality in the time domain of delay given by τ and ξ.

FIG. 6 illustrates the rearrangement of the tensor

_(κ)(t,s) as a matrix of correlation matrices

_(κ)(t, s), for this example, all processes are considered to have the same autocorrelation and cross-correlation for having an SSF.

FIG. 7 illustrates how the correlation matrices of each coordinate pair are observed (

, κ) in the rearrangement of the tensor

_(κ)(t,s) as a matrix of correlation matrices

_(κ)(t, s), when dealing with NSSFs.

FIG. 8 shows the set of eigenvalues Λ_(k) and eigenfunctions φ_(k)(t) obtained from the eigen-decomposition of the matrix of correlation matrices

_(κ)(t, s).

FIG. 9 illustrates an example of a process ξ(t) formed by L_(min) realizations

(t) where each of the realizations

32 1, 2, . . . , L_(min) is defined in the same interval 0<t<T.

FIG. 10 describes the required rearrangement of the process ξ(t).

FIG. 11 shows the process of windowing and delay α associated with the realizations of the sequences

_(l)(t) and

_(l)(t) for obtaining

(t) for

=1.

FIG. 12 shows the two-dimensional window w(t,s) as an additional function to modify the matrix of correlation matrices

_(κ)(t,s).

FIG. 13 shows an example of the modified matrix of matrices

_(κ)(t,s), from the windowing of

_(κ)(t,s) by means of the two-dimensional filter w(t, s).

FIG. 14 shows the architecture 1400 of the generic doubly-selective channel emulator, locally non-stationary in time, non-stationary in frequency, and with non-separable scattering function of the present invention.

FIG. 15 illustrates the architecture of the coefficients and functions generator module 1402 GEN_EIGEN_VALFUNC_1.

FIG. 16 shows the stochastic processes module 1403 GEN_EXPANSION_MEM_1.

FIG. 17 shows the module of windowing and sum of processes 1404 VENT_SUMPROC_1.

FIG. 18a and FIG. 18b show two non-separable scattering functions obtained from the COST-BU standard.

FIG. 19 shows the example of 3 independent channel realizations whose statistics of the dispersion function evolve over time.

FIG. 20a shows an example of the first 5 basis functions φ_(k)(t), obtained from the eigen-decomposition of the matrix of correlation matrices

_(κ)(t,s) of the considered example.

FIG. 20b shows an example of the first 5 basis functions {dot over (φ)}_(k)(t), obtained from the eigen-decomposition of the matrix of modified correlation matrices,

_(κ)(t,s). This modification is based on the windowing of

_(κ)(t,s) by the filter or two-dimensional window w(t,s) for each of the correlation matrices in 0<t<T, 0<s<T.

FIGS. 21a, 21b, 21c, 21d and 21e show the evolution of a variant NSSF in time, obtained by estimating channel realizations generated by a simulator/emulator using the present invention

DETAILED DESCRIPTION OF THE INVENTION

Ortogonalizaction of the Wireless Communication Channel.

A communication channel given by a real multipath propagation environment, where there is relative mobility between transmitter and receiver, results in a behavior whose statistics are doubly dispersive, that is, it presents dispersion in both the time delay domain and in the Doppler frequency domain. Therefore, the simulators and channel emulators to be designed must be parameterized from separable (SSF) or non-separable (NSSF) dispersion functions, and according to the locally non-stationary conditions that they wish to reproduce. So a factor of crucial importance is the complexity in the design of the channel simulator/emulator, which will depend on the dimensionality of the channel model, as well as its maximum values of maximum frequency Doppler f_(Dmax) and maximum delay τ_(max). Whereby if relevant M discrete trajectories are considered, the channel model is described as follows:

$\begin{matrix} {{c_{bb}\left( {t;\tau} \right)} = {\sum\limits_{m = 0}^{M - 1}\; {{\mu_{m}(t)}{{\delta \left( {\tau - \tau_{m}} \right)}.}}}} & ({IX}) \end{matrix}$

Note that in the previous equation, the dispersion delay τ_(M-1), commonly denoted as τ_(max), corresponds to the maximum dispersion of the channel in the time domain of delay. To be able to parameterize a simulator/emulator to statistically approximate a channel with NSSF, the present invention proposes the utilization of the channel orthogonalization method, which performs the channel expansion from a finite and reduced set of eigen functions

(τ) and whose method is presented in greater detail in the doctoral thesis of one of the authors of this invention [REF4] as well as in the patent “Emulador de Canal Doblemente Selectivo, estacionario o No-estacionario en tiempo, con Función de Dispersión No-Separable”. To achieve channel expansion from a finite and reduced set of eigen functions, it is necessary to consider a frequency observation window (corresponding to the bandwidth of the signal of interest), so it can be considered that the channel has been limited within a band of frequencies by a filter g(τ). Resulting in the band-based baseband channel model as:

$\begin{matrix} {{h_{bb}\left( {t;\tau} \right)} = {{{c_{bb}\left( {t;\tau} \right)}*{g(\tau)}} = {\sum\limits_{m = 0}^{M - 1}\; {{\mu_{m}(t)}{{g\left( {\tau - \gamma_{m}} \right)}.}}}}} & (X) \end{matrix}$

This channel has a finite dimensionality, so it can be expanded as shown below:

$\begin{matrix} {{{h_{bb}\left( {t;\tau} \right)} = {\sum\limits_{ϛ = 1}^{L_{\min}}\; {{\zeta_{ϛ}(t)}{\psi_{ϛ}(\tau)}}}},} & ({XI}) \end{matrix}$

this representation of the channel characterizes the wireless channel by means of “non-physical trajectories”, that is, with propagation trajectories without physical meaning, which allows to obtain a reduction of the dimensionality in the time-delay domain, which in principle is infinite, to only L_(min) components, or stochastic processes

(t). The functions that will be used to expand the channel's realizations,

(τ), must be able to represent any channel realization of any SSF or NSSF considered during a simulation, so it can be shown that a solution consists of obtaining these functions from the decomposition in eigenvectors

(τ) y eigenvalues

, of a universal correlation function, R_(U)(τ,ξ) [REF6]. This universal correlation function is formed from a correlation function of a non-stationary and non-correlated stochastic process P_(U)(τ, ξ) which has values of one in its diagonal, for the time from zero to the maximum τ_(max) considered in the SSF or NSSF that will be considered in the simulation, that is:

P _(U)(τ, ξ)=δ(τ−ξ),τ, ξ∈{0,max(τ_(max))},  (XII)

where P_(U)(τ, ξ) is here called as “two-dimensional universal profile”, and its diagonal function, P_(U)(τ), is hereafter named as the “universal power profile”, shown in FIG. 4. This two-dimensional universal profile is then doubly convolved by band-limiting filters g(τ) and g(ξ), in the domains τy ξ, respectively, to finally generate the universal correlation function R_(U)(τ,ξ), a i.e.:

R _(U)(τ,ξ)=∫⁻²⁸ ^(∞)∫_(−∞) ^(∞) P _(U)(τ,ξ)g(τ)g(ξ)dτdξ.  (XIII)

The processes

(t) in equation (XI) are obtained through the projection of the basis function set,

(τ), with the channel that has to be transformed into the subspace, as shown below:

(t)=

h _(bb)(t;τ),

(τ)

  (XIV)

In this way, the correlation of the processes

(t) will provide with statistically important information to determine how dispersive the channel is, how stationary it is, as well as the dimensionality of the channel once the orthogonalization has been applied. Therefore, the correlation between two processes is defined as follows:

_(κ)(t,s)=E{

(t)ζ_(κ)*(s)},  (XV)

where if the process

(t) is defined from equation XIV as:

(t)=∫_(−∞) ^(∞) h _(bb)(t;τ)

(τ)dτ,  (XVI)

the correlation would be defined as shown below:

_(κ)(t,s)=E{∫ _(−∞) ^(∞) h _(bb)(t;τ)

(τ)dτ∫ _(−∞) ^(∞) h _(bb)*(s;ξ)ψ_(κ)(ξ)dξ},  (XVII)

_(κ)(t,s)=∫_(−∞) ^(∞)∫_(−∞) ^(∞) R _(h) _(bb) (t,s;τ, ξ)

(τ)ψ_(κ)(ξ)dτdξ.  (XVIII)

Therefore, if we assume stationarity in the wide sense of channel behavior, the statistics of fading or distortions due to Doppler scattering will not change with respect to time. In the patent “Emulador de canal doblemente selectivo, estacionario o no-estacionario en tiempo, con función de dispersión no-separable”, we presented the method and apparatus that implements this modality as well as the modality where the channel is approached as stationary in short-time, whereby in larger observation windows, the channel can be treated as non-stationary.

However, if you want to emulate a real and highly variant propagation environment, and also knowing that such wireless channel h_(bb)(t; τ) in reality is non-stationary within short time intervals (comparable to the duration of a transmitted symbol or data frame), and correlated in the time domain of delay τ and in the temporal domain t; then the emulator to be designed must be able to generate channel realizations that possess the correlation defined by R_(h) _(bb) (t, s; τ, ξ) completely. Therefore, the channel correlation R_(h) _(bb) (t,s; τ, ξ) describes the correlation between the sample in

t, τ

with the sample in

s, ξ

; Hence, the correlation introduced by the filtering stages within the transmitter and receiver is considered, as well as the correlation of the physical trajectories in the propagation environment. Then, applying the orthogonalization technique to the correlation tensor R_(h) _(bb) (t, s; τ, ξ), the correlation seen in all domains will be maintained. This allows to obtain a finite size tensor

_(κ)(t, s) because the dimensionality seen in the delay domain τ and ξ is infinite.

Therefore, in this invention it is explained the method and apparatus that will generate the channel realizations corresponding to the correlation tensor R_(h) _(bb) (t,s; τ, ξ) of a channel reproducing exactly the correlation between the sample in

t, T

with the sample

s, ξ

and whose channel dispersion function can be non-separable or separable, for environments where the channel is non-stationary.

FIG. 1 shows an example of the variations of power received in a channel with multipath, on different observation ranges, where it can be seen that the factors that mainly affects the variability of the channel, such as the fading of long and small scales, for a space of local observation time, could be separated as a product for the stationary case.

FIG. 2 shows an example of the non-separable dispersion function of a doubly dispersive communications channel in time delay τ and Doppler frequency v; where it can be seen that the delay power profile P(τ) is different for each Doppler frequency value v. Likewise, the delay power profile observed in each Doppler frequency value v can be continuous or discrete.

FIG. 3 shows an example of a discrete power delay profile P(τ) with identifiable components, where the maximum delay parameter is observed, τ_(max), which determines the maximum delay value that must be considered when defining a relevant power value. FIG. 4 illustrates the universal power profile, which is employed for obtaining a superspace to apply the channel orthogonalization technique, which allows obtaining a set of eigenvalues and eigenfunctions; this set allows the expansion of any power delay profile, whether continuous or discrete, where the highest energy of the delay is within the maximum delay parameter τ_(max), since the channel is required or observed in a finite bandwidth.

FIG. 5 shows the correlation tensor R_(h) _(bb) (t,s; τ, ξ) in the frequency domains v, v for the frequency value v=v₁, and the reduction that is made in the dimensionality in the time domain of delay given by τ and ξ. This reduction in dimensionality is achieved using the channel orthogonalization technique, in order to obtain a correlation tensor

_(κ)(t, s) with finite dimensionality given by the indices

and κ.

FIG. 6 illustrates the rearrangement of the tensor

_(κ)(t,s) as a matrix of correlation matrices

_(κ)(t, s) with the objective of observing the correlation of the non-physical or virtual delay domain given by the coordinate index (

, x) and the corresponding time correlation matrix observed in the interval 0<t<T y 0<s<T. For this example, all processes are considered to have the same autocorrelation and cross-correlation, that is, they correspond to an SSF.

FIG. 7 illustrates how the correlation matrices of each coordinate pair are observed (

, κ) in the rearrangement of the tensor

_(κ)(t,s) as a matrix of correlation matrices

_(κ)(t, s), when dealing with a NSSF.

FIG. 8 shows the set of values Λ_(k) and base functions φ_(k)(t), obtained from the eigen-decomposition of the matrix of correlation matrices

_(κ)(t,s). Additionally, it is observed that the set of eigenfunctions φ_(k)(t) and eigenvalues Δ_(k) will expand realizations of a process conformed by L_(min) realizations

(t) where each of the realizations

=1, 2, . . . , L_(min) is defined in the interval 0<t<T.

FIG. 9 illustrates an example of a process ξ(t) conformed by L_(min) realizations

(t) where each of the realizations

=1, 2, . . . , L_(min) is defined in the same interval 0<t<T.

FIG. 10 describes the required rearrangement of the process ξ(t) according to the number of the process

=1, 2, . . . , L_(min); in this way, channel realizations are generated for 1=1, 2, . . . , ∞ and the realizations are concatenated

_(l)(t) for obtaining L_(min) arbitrarily long processes.

FIG. 11 shows the window process with w(t) for each of the realizations of the sequences

_(l)(t) and

_(l)(t) and the application of the associated delay α, to consequently add the two sequences and thus forming the arbitrarily long process

(t) for

=1.

FIG. 12 shows the two-dimensional window w(t,s) as an additional function to modify the matrix of correlation matrices

_(κ)(t,s) and achieve a reduction in the number of eigenfunctions φ_(k)(t) and eigenvalues Λ_(k) required to expand the process ξ(t) defined in the interval 0<t<T L_(min).

FIG. 13 shows an example of the modified matrix of correlation matrices

_(κ)(t,s), from applying the windowing to

_(κ)(t,s) by means of the bidimensional filter w(t, s).

In FIG. 14 it is shown the architecture 1400 of the generic doubly selective channel emulator, locally non-stationary in time, non-stationary in frequency, and with non-separable dispersion function of the present invention, which consists of six main modules: the controller module 1401 CNTL_1, the module for generation of coefficients and basis functions 1402 GEN_EIGEN_VALFUNC_1, the module of stochastic processes generation 1403 GEN_EXPANSION_MEM_1, the module of windowing and sum of processes 1404 VENT_SUMPROC_1, the multiplying and interpolating module 1405 MULT_FUNC_UNIVERSAL_1 and the channel convolution module 1406 OPCONVCHNL_1.

FIG. 15 illustrates the architecture of the coefficient and function generator module 1402 GEN_EIGEN_VALFUNC_1 which is made up of two elements: the generator of random variables with predefined variance 15001 GEN_EIGENVAL_1, the module of storage and generation of eigenfunctions 15002 MEM_EIGEN_FUNC_1.

FIG. 16 shows the stochastic process module 1403 GEN_EXPANSION_MEM_1 contains three submodules: the vector multiplication submodule 16001 MULT_ADD_1, the rearrangement module and allocation of generated processes ξ(t) 16002 REAC_ASIFNPROC_1 and the block of type memories that store the sequences

(t) and

(t) as indicated by the process index

=1, 2, . . . , L_(min), 16003 DMEM_1, DMEM_2, . . . , DMEM_Kmin.

FIG. 17 shows the module of windowing and sum of processes 1404 VENT_SUMPROC_1, which is conformed by L_(min) stochastic process generator modules 17001 MULT_W1_SUM, MULT_W2_SUM to MULT_W2_SUM which are responsible for making a sum of the sequences

(t) and

(t) in an specific manner for obtaining the processes

(t) arbitrarily long. Each of the generators contains two submodules, the submodule 17002 DELAY is responsible for generating a time shift, and the submodule 17003 VENT_1 which is a block of memory initialized with the values of the windowing function w(t).

FIG. 18a and FIG. 18b show two NSSF obtained from the COST-BU standard, which are used to indicate that a channel can have different NSSF over time in the case of being non-stationary. These NSSF are used as an example of the system proposed in this invention, which demonstrates that it is feasible to generate continuous channel realizations and at the same time guarantee that the estimated NSSF is changing with respect to time for the locally non-stationary case.

FIG. 19 shows the example of 3 independent channel realizations whose statistics of the dispersion function evolve over time. For this example, the temporal selectivity is observed in the transition between two dispersion functions.

FIG. 20a shows an example of the first 5 basis functions φ_(k)(t), obtained from the eigen-decomposition of the matrix of correlation matrices

_(κ)(t, s) of the considered example.

FIG. 20b shows an example of the first 5 basis functions {dot over (φ)}_(k)(t), obtained from the eigen-decomposition of the modified matrix of correlation matrices,

_(κ)(t,s). This modification is based on the windowing of

_(κ)(t,s) by the filter or bidimensional window w(t,s) for each of the correlation matrices in 0<t<T, 0<s<T.

FIG. 21a , FIG. 21b , FIG. 21c , FIG. 21d and FIG. 21e show the statistical performance obtained by the generic doubly selective channel emulator, locally non-stationary in time, non-stationary in frequency, and with non-separable scattering function. of the present invention, where the evolution of the COST-BU scattering function with a Doppler frequency [−500 Hz, 500 Hz] to a Doppler dispersion of [−50 Hz, 50 Hz], whose functions were shown in FIG. 18.

Method for Generic Emulation/Simulation of Doubly Selective Channels, Locally Non-Stationary in Time, Non-Stationary in Frequency, and with Non-Separable Dispersion Function.

1.—To perform the generic emulation of doubly selective channels, locally non-stationary in time, non-stationary in frequency, and with non-separable scattering function, it is important to define the correlation tensor R_(h) _(bb) (t,s; τ,ξ), a which can be obtained from the channel dispersion function specified by means of communication standards, field measurements or by the user. In this way, the maximum Doppler frequency is defined f_(Dmax) and maximum delay τ_(max), as well as the universal delay profile. In addition, it is necessary to define the time T of duration in which the correlation tensor is defined R_(h) _(bb) (t,s; τ, ξ) and the mean square error corresponding to the approximation of the doubly dispersive channel.

2.—Having defined the correlation tensor R_(h) _(bb) (t,s; τ, ξ) and thus, after having obtained the correlation tensor with reduced dimensionality

_(κ)(t, s), it continue to make a rearrangement of the tensor

_(κ)(t, s) as a matrix of correlation matrices

_(κ)(t, s) with the objective of observing the correlation of the non-physical or virtual delay domain given by the coordinate index (

, κ) and also the corresponding time correlation matrix observed in the interval 0<t<T y 0<s<T, as shown in FIG. 6 and FIG. 7.

3.—Once the matrix of correlation matrices

_(κ)(t,s) has been obtained, the eigen-decomposition of it is performed as described in the equations (XIX) and (XX), for obtaining a set of eigenfunctions φ_(k)(t) with its corresponding eigenvalues Λ_(k) [REF5]. The size of the matrix of matrices

_(κ)(t,s) and therefore the set of basis functions φ_(k)(t) and eigenvalues Λ_(k), will be determined by the number L_(min) of universal functions required by the expansion in (XI), as a result of the MSE approximation error of the channel orthogonalization.

$\begin{matrix} {{\Lambda_{k}{\phi_{k}(s)}} = {\int_{0}^{T_{Lmin}}{{\ }_{ϛ,\kappa}\left( {t,s} \right){\phi_{k}(t)}{{dt}.}}}} & ({XIX}) \\ {{{\xi (t)} = {\sum\limits_{k = 1}^{K_{\min}}\; {P_{k}{\phi_{k}(t)}}}},{0 < t < T_{Lmin}}} & ({XX}) \end{matrix}$

As a result of the eigen-decomposition of the matrix of matrices

_(κ)(t,s), the eigenfunctions φ_(k)(t) are obtained, defined in the interval 0<t<T_(Lmin) where T_(Lmin)=T*L_(min), in conjunction with their eigenvalues Λ_(k) for k=1, 2, . . . , K_(min); where K_(min) is the number of eigenfunctions and eigenvalues required to expand a process ξ(t) with a predefined MSE approximation error to the matrix of correlation matrices

_(κ)(t,s).

4.—A generation of K_(min) complex Gaussian random variables ρ_(k) of unit variance is performed, whose are weighted by its corresponding eigenvalue Λ_(k). Specifically, we obtain a set of random variables P_(k)=√{square root over (Λ_(k))}*ρ_(k) that applying them to eigen-functions φ_(k)(t), will expand the process ξ(t) defined in the interval 0<t<T_(Lmin). The process (t) represents L_(min) realizations

(t) where each of the realizations

=1, 2, . . . , L_(min) is defined in the interval 0<t<T, as shown in FIG. 8 and FIG. 9.

5.—After having generated a realization of the process ξ(t), we proceed to rearrange it in L_(min) independent sequences

_(l)(t) from the reassignment according to the number of the process

=1, 2, . . . , L_(min) as shown in FIG. 10. In this way, channel realizations are generated for each time l=1, 2, . . . , ∞ and the concatenation of realizations are continued

_(l)(t) as shown in the same FIG. 10.

6.—Likewise, another process similar to ξ(t) and another set of realizations called

_(l)(t) are produced; then a window w(t) is used to weight each realization of each generated sequences

_(l)(t) and

_(l)(t) for

=1, 2, . . . , L_(min), y l=1, 2, . . . , ∞.

7.—Subsequently, the sequences

_(l)(t) and

_(l)(t) once weighted are shifted by a realization of a uniform random variable α whose value will remain constant for l=1, 2, . . . , ∞, as described below:

$\begin{matrix} {{{{l*T} - \frac{T}{2}} \leq t < {{l*T} + \frac{T}{2}}},{l = 1},2,\ldots \mspace{14mu},\infty,} & ({XXI}) \end{matrix}$

and where

(t) will have also an additional phase shift of T/2; hence it will be obtained L_(min) sums of sequences according to the index of the generated process

=1, 2, . . . , L_(min) as described in FIG. 11 for

=1. Therefore, it has been generated L_(min) correlated and arbitrarily long stochastic processes

(t), with stationary or non-stationary statistics that have been predefined in the correlation matrix. Note that the different L_(min) stochastic processes

(t) have a phase shift determined by a random value defined by the parameter α whose value remains constant throughout the life of the processes

(t). The single schema of concatenation of windowed processes, for realization of random processes, is explained in detail in the patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria”.

It is important to note that the number of eigenfunctions φ_(k)(t) can be reduced in conjunction with the corresponding eigenvalues Λ_(k) for k=1, 2, . . . , K_(min), required to expand a process ξ(t); it can be also avoided the operation of multiplying the window w(t) to each of the realizations of each of the generated sequences

_(l)(t) and

_(l)(t) for

=1, 2, . . . , L_(min), and l=1, 2, . . . , ∞. The aforementioned is achieved by using the following stochastic process generation methodology:

-   -   a) It is defined the correlation matrix corresponding to the         process to be generated, which in this case would be the         corresponding index correlation matrix         , κ         of the matrix of correlation matrices         _(κ)(t,s).     -   b) It is defined a filter or two-dimensional window F_(BF)(t,s)         which in this case will be the window w (t, s)=w (t)w (s) shown         in FIG. 12.     -   c) The Hadamard product of the two-dimensional window         F_(BF)(t,s) and each of the temporal correlation matrices         =1, 2, . . . , Lmin and κ=1, 2, . . . , Lmin that conforms         _(κ)(t,s), and thus a modified correlation function         _(κ)(t,s) is generated, as shown in FIG. 13. The above can be         represented by the following definition:

_(κ)(t,s)=

_(κ)(t,s)⊙)w(t,s)0<t<T,0<s<T,  (XXII)

-   -   -   where the operator ⊙ defines the Hadamard product.

    -   d) The Karhunen-Loève expansion of the modified correlation         matrix         _(κ)(t,s) is performed, generating the corresponding eigenvalues         and eigenvectors [{dot over (Λ)}_(k), {dot over (φ)}_(k)(t)]. In         the case of the expansion of processes ξ(t) corresponding to the         matrix of correlation matrices         _(κ)(t,s), the eigen-decomposition is performed to the matrix of         correlation matrices         _(x)(t,s) completely. With this procedure, a new set of         eigenfunctions {dot over (φ)}_(k)(t) with its corresponding         eigenvalues {dot over (Λ)}_(k) are generated, which are able to         expand processes ξ(t) where the windowing has already been         implicitly applied by the equation (XXII).

    -   e) Later, K_(min) complex Gaussian random variables ρ_(k) of         unit variance are generated to be weighed with its corresponding         eigenvalue {dot over (Λ)}_(k), thus obtaining the coefficients         P_(k)=√{square root over ({dot over (Λ)}_(k))}*ρ_(k).

    -   f) The expansion of the stochastic process is carried out ξ(t)         as expressed in (XX) and shown in FIG. 9.

    -   g) Likewise, another process similar to ξ(t) and therefore         another set of realizations called         _(l)(t), which do not require a weighting by the window w(t).

    -   h) The sequences         _(l)(t) and         _(l)(t) are phase shifted by a realization of the random         variable α, while         _(l)(t) will also have an additional phase shift of T/2. As a         result, L_(min) sum of sequences are carried out, according to         the index of the process generated         =1, 2, . . . , L_(min). In this way, L_(min) arbitrarily long         stochastic processes         (t) are generated, with predefined statistics capable of being         stationary or non-stationary, as shown in FIG. 11. This schema         of concatenation of windowed processes, where the         characteristics required by the window w (t) and the parameter         α, is found in the patent “Método y aparato de generación de         realizaciones de canal estacionarias y no-estacionarias de         longitud arbitraria”.

8.—Once the L_(min) arbitrarily long stochastic processes

(t) are generated, by means of any of the two variants explained previously, it follows to perform the expansion of the channel realization ĥ_(bb)(t; τ) from the multiplication of the processes

(t), with the set of universal orthogonal functions

(τ), as described as follows:

$\begin{matrix} {{{{\hat{h}}_{bb}\left( {t;\tau} \right)} = {\sum\limits_{ϛ = 1}^{L_{\min}}\; {{\beta_{ϛ}(t)}{\psi_{ϛ}(\tau)}}}},} & ({XXIII}) \end{matrix}$

9.—Finally, from the discretization of the realization of the channel ĥ_(bb)(t; τ) that is sampled every Ts seconds, it is obtained the processes h_(q)[nT_(s)] for q=0, 1, 2, . . . , Q−1, that represent the discrete channel as a linear filter of Q taps, variant in time, and that will impregnate (through the convolution process) the distortions to the signal of interest u(t=nT_(s)) according to the statistics defined in the design of the emulator's realizations, which may be generated according to a doubly selective non-stationary propagation environment with Non-separable Dispersion.

Implementation of the Proposed Channel Model.

FIG. 14 shows the general architecture of the proposed emulator for doubly-selective channels 1400 able to emulate the statistics of a non-separable dispersion function and the locally non-stationarity of the channel, supported by expressions (X) to (XVIII) and whose generation method previously presented is based on the analysis and synthesis expressions defined in (XIX) and (XX), respectively, as well as the rearrangement of the channel realizations, as explained before.

The proposed architecture consists of six essential blocks 1401-1406, which in conjunction serve to generate a non-stationary stochastic process with statistics that can evolve over time and that represent doubly dispersive channels; i.e., dispersive in Doppler frequency and time delay, with non-separable dispersion function. The channel emulation scheme given by the system 1400 allows to impregnate doubly selective distortions to an input signal u(t) coming from the output of a baseband transmitter device, resulting in a signal y(t) properly distorted with the statistics of a previously defined channel.

The general architecture 1400 described in FIG. 14 contains a finite state machine 1401 CNTL_1 which performs the general control of the architecture. Which through a group of essential signals like “Data_conf_system”, “Instruction”, “Start”, “Rst” y “Clk”, perform the initialization processes of required parameters along the blocks of the general architecture 1400, as well as determines the processing of the data for the correct generation of stochastic processes

(t) where

is defined in the way

=1, 2, . . . , L_(min), and thus to carry out the expansion of the realization of the channel ĥ_(bb)(t;τ) that will be applied to the signal of interest u(t).

The block 1402 GEN_EIGEN_VALFUNC_1 shown in FIG. 14, performs the generation of the coefficients P_(k) from random Gaussian variables ρ_(k) of unit variance, and whose variance of P_(k), is determined according to the eigenvalues Λ_(k) previously stored. It also stores and produces the values of the eigenfunctions φ_(k)(t), to be delivered to the module 1403 GEN_EXPANSION_MEM_1.

Likewise, the block 1402 GEN_EIGEN_VALFUNC_1 is formed by two submodules, which are shown in FIG. 15. The first submodule 15001 GEN_EIGENVAL_1 contains a Gaussian random variable generator GRNG that produces K_(min) random variables ρ_(k) to be weighted by the eigenvalues Λ_(k) previously stored in a memory MEM_EVAL_1. The second submodule 15002 MEM_EIGEN_FUNC_1 consists of a block of memory, which stores the sets of eigenfunctions φ_(k)(t) that, similar to the eigenvalues Λ_(k), were obtained from the process of eigen-decomposition of the matrix of matrices

_(κ)(t,s).

The module 1403 GEN_EXPANSION_MEM_1 performs the process expansion ξ(t) periodically, from the parameters Λ_(k) and φ_(k)(t), and subsequently generates two sets of L_(min) channel realizations

(t) and

(t), of duration T, with predefined statistics from the rearrangement of the process ξ(t) according to the process index

=1, 2, . . . . , L_(min).

Likewise, the block 1403 GEN_EXPANSION_MEM_1 is formed by three main submodules, which are shown in FIG. 16. The submodule 16001 MULT_ADD_1 receives the values of the previously weighted random variables P_(k) and multiplies them with the eigenfunctions φ_(k)(t) to carry out the expansion of the processes ξ(t) as defined in (XX). Subsequently, the submodule 16002 REAC_ASIFNPROC_1 performs the rearrangement/assignment of two processes of the type ξ(t) to two sequences

(t) and

(t) as indicated by the process index

=1, 2, . . . , L_(min). Besides, the set of L_(min) submodules 16003 DMEM_1, DMEM_2, . . . , DMEM_Kmin are buffer-like memory blocks that store the sequences

(t) and

(t) as indicated by the process index

=1, 2, . . . , L_(min), and which will deliver the values of the sequences

(t) and

(t) for further processing.

The module 1404 VENT_SUMPROC_1 is the block responsible for generating L_(min) arbitrarily long stochastic processes with non-stationary statistics

(t). Each of the processes

(t) are generated from the sum of two sequences

(t) and

(t). Previously, the window is applied to each of the sequences

(t) and

(t) each period T, and later, a delay α is applied to both sequences whose value is random at the beginning of the emulation process and subsequently remains constant. In addition, one of the sequences is delayed with respect to the other T/2 and then both added for yielding the process

(t). It is important to highlight that the generation of stochastic processes

(t) for

=1, 2, . . . , L_(min), are of arbitrary length, and that it is employed the window scheme and parameter considerations of α, and the window w (t) presented in the patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria”.

Likewise, the module 1404 VENT_SUMPROC_1 is formed by four main blocks which are shown in FIG. 17. The module 1404 VENT_SUMPROC_1 has L_(min) process generators 17001 MULT_W1_SUM, MULT_W2_SUM to MULT_WLmin_SUM which are responsible of making a sum of the sequences

(t) and

(t) specifically to obtain the processes

(t) arbitrarily long for

=1, 2, . . . , L_(min). Each of the generators contains two submodules, the submodule 17002 DELAY is responsible for generating a time shift from a previously configured value, for the case of the branch of the sequence

(t) the delay is set from the value α−T/2, where α and T are parameters previously calculated. Besides, submodule 17003 is a memory block; its registers are initialized with the values of the window function which, like α and T, are defined as previously presented in the patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria”.

However, it is important to highlight that in case of generating the processes ξ(t) by means of the stochastic process generation methodology presented in this patent (where the matrix of correlation matrices is modified

(t,s) with a two-dimensional filter), the memory block indicated as the submodule 17003 will be initialized by a constant function, which will not modify in amplitude the previously generated sequences

(t) and

(t), because these sequences already have this window implicity.

The block 1405 MULT_FUNC_UNIVERSAL_1 shown in FIG. 14, performs vector multiplication of the arbitrarily long stochastic processes

(t) with the universal base functions

(t) to expand the generated cannel ĥ_(bb)(t; τ). Likewise, an interpolation scheme is used so that the expansion of the channel generated in (XXIII) matches the sampling rate at which the input signal u(t), coming from the output of a transmitting device, is delivered. In this way the resulting processes h_(q) [nT_(s)] for q=0, 1, 2, . . . , Q−1, are correlated stochastic processes that are generated at the required sampling rates.

The module 1406 OPCONVCHNL_1 presented in FIG. 14, performs the convolution operation between the input signal u(t) and h_(q)[nT_(s)] for q=0, 1, 2, . . . , Q 1, at the sampling rate defined by T_(s) and which are generated by the module 1405 MULT_FUNC_UNIVERSAL_1 from the statistics of the predefined scattering function S(v, τ), which can evolve over time if desired as for S(t; v, τ). Hence, the obtained signal y(t) has been properly distorted with the statistics of a previously defined non-stationary channel with a non-separable dispersion function.

Statistical results of the generated channel realizations of a non-separable dispersion function, obtained by applying the method and apparatus proposed in the present invention.

In order to demonstrate the accuracy and quality of the channel realizations generated by the method and apparatus proposed in the present invention, two non-separable dispersion functions obtained by different parameterization of the channel defined by the COST-BU standard are used as an example, whose are shown in FIG. 18a and FIG. 18b . The results presented below are obtained through the concatenation of stochastic processes which are generated from two sets of eigenfunctions φ_(k)(t) and eigenvalues Λ_(k). The two sets of eigenfunctions and eigenvalues were obtained from the two NSSF indicated in FIG. 18a and FIG. 18b . The simulation starts with the generation of channel realizations from the dispersion function COST-BU 1 with the Doppler bandwidth parameters specified as [−500 Hz, 500 Hz], a maximum delay value τ_(max)=10e−6 seconds; and subsequently the channel realizations evolve into a COST-BU 2 dispersion function with Doppler bandwidth parameters of [−50 Hz, 50 Hz] and a maximum delay value τ_(max)=7e−6 seconds, as shown in FIG. 19. The sampling frequency is F_(s)=1.35 Mhz and the band limiting filter is represented by a raised cosine function with a total bandwidth of 675 kHz and an excess bandwidth of 0.5. In the case of the universal orthogonal functions, it is considered L_(min)=7 functions for the given channel parameters.

In FIGS. 20a and 20b are plotted for comparison purposes, the basis functions φ_(k)(t) obtained from the eigen-decomposition of the matrix of matrices

_(κ)(t,s), and the basis functions {dot over (φ)}_(k)(t) obtained from the eigen-decomposition of the matrix of matrices

_(κ)(t,s), respectively; where the latter implicitly includes the two-dimensional window w(t,s), as it was applied before the eigen-decomposition was carried out.

FIG. 21a , FIG. 21b , FIG. 21c , FIG. 21d and FIG. 21e show the evolution of the dispersion function S(t; v, τ) in 5 instants of time t₁, t₂, t₃, t₄ and t₅; with changes form a dispersion in Doppler frequency of [−500 Hz, 500 Hz] into a dispersion of [−50 Hz, 50 Hz]. The resulting time-variant dispersion function in the time S(t,v,τ), was obtained from 10,000 realizations made from the generation of L_(min)=7 stochastic processes

(t).

The present invention has been described in its preferred embodiment, however, it will be apparent to those skilled in the art, that a multiplicity of changes and modifications of this invention can be made, without departing from the scope of the following claims. The descriptions of the methods and process diagrams presented in the present invention are provided simply as illustrative examples and are not intended to require or imply that the steps of the various definitions must be performed in the order presented. As will be appreciated by one skilled in the art, the steps of the various previous definitions can be performed in any order. Words such as “then”, “next”, etc., are not intended to limit the order of steps; these words are used simply to guide the reader through the description of the methods. Although process diagrams can describe operations as a sequential process, many of the operations can be performed in parallel or simultaneously. In addition, the order of operations may change. A process can correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its termination may correspond to a return of the function, to the call function or the main function.

The various blocks, modules, circuits and steps of the illustrated logic algorithm blocks, described in connection with the definitions described in the present document may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various commented components, blocks, modules, circuits and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the limitations of the application and/or the particular design imposed by a system in general. The experts can implement the described functionality in various ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.

Embodiments implemented in computer programs can be implemented in software, firmware, middleware, microcode, hardware description languages, or any combination thereof. A segment of code or instructions executable by machine can represent a procedure, a function, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program instructions. A code segment may be implemented or described in another code segment, or a hardware circuit, passing and/or receiving information, data, arguments, parameters or memory content. Information, arguments, parameters, data, etc., can be passed, forwarded or transmitted through any suitable means, including the exchange of memory, sending of messages, sending through tokens, transmission of the network, etc.

When implemented in software, functions can be stored as one or more instructions, or code in a computer-readable storage medium either transiently or as a final destination. The steps of a method or algorithm described in this document can be included in a software module executable in a processor, which can reside in a storage medium readable by computer or readable by a processor module. The non-transient communication means readable by computer or readable by the processor, include both computer storage means and storage media of materials that facilitate the transfer of a computer program from one place to another. A non-transient storage medium readable by the processor can be any available means that can be accessed by a computer. By way of example, and not limitation, such non-transient means readable by the processor, may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any another means of tangible storage that can be used to store desired program code in the form of instructions or data structures and which can be accessed by a computer or processor. Disk, as used in this document, includes compact disc (CD), laser discs, optical discs, digital versatile discs (DVD), a floppy disk and the Blu-ray disc on discs are usually reproduced magnetically, while the discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer readable media. In addition, the operations of a procedure or algorithm may reside as one or any combination or set of codes and/or instructions in a non-transient medium readable for a processor, and/or in a non-transient medium readable for a computer, which it can be incorporated into a software product.

When implemented in hardware, the functionality can be implemented within a signal processing circuit, which may be suitable for use in a wireless receiver or mobile device. Such implementation of signal processing may include circuits to obtain the measurement of the signal of interest, as well as calculation steps described in the definitions presented in the present invention.

The hardware used to implement logical functions, logic blocks, modules and circuits described in connection with the aspects described in this document, can be implemented or implemented with a general-purpose processor, a digital signal processor (DSP), a specific application integrated circuit (ASIC), an array of programmable field gates (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination of them designed to perform the functions described in this document. A general-purpose processor may be a microprocessor, but, in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor can also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors together with a DSP core, or any other configuration. Alternatively, some steps or methods can be performed by circuits that are specific to a given function.

Any reference to the claim elements in the singular, for example, using the articles “a”, “an” or “the” should not be interpreted as limiting the element to the singular. The above description of the disclosed definitions is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these definitions and/or implementations will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown in this document, but should be accorded the broadest scope consistent with the following claims and the novel principles and features described herein.

REFERENCES

-   [REF1] Parsons, J. (1992). The mobile radio propagation channel.     Halsted Press. -   [REF2] P. Bello, “Characterization of randomly time-variant linear     channels,” vol. 11, no. 4, pp. 360 393, December 1963. -   [REF3] Lee, W. (1995). “Mobile Cellular Telecommunications: Analog     and Digital Systems”. McGraw-Hill. -   [REF4] Parra-Michel, R. (2003). “Modelado y Simulación de Canales de     Banda Amplia. PhD thesis. Channel,” IEEE Transactions on Vehicular     Technology, vol. 41, no. 4, pp. 461-468, November 1992. -   [REF5] K.-W. Yip and T.-S. Ng, “Karhunen-Loève expansion of the     wssus channel output and its application to efficient simulation,”     Selected Areas in Communications, IEEE Journal on, vol. 15, no. 4,     pp. 640-646, May 1997. -   [REF6] R. Parra-Michel, V. Kontorovitch, and A. Orozco-Lugo,     “Simulation of wideband channels with non-separable scattering     functions,” in Proc. IEEE International Conference on Acoustics,     Speech, and Signal Processing (ICASSP '02), vol. 3,13-17 May 2002,     pp. 2829 2832. 

1. A method for generating simulation/emulation of a doubly selective channel, locally non-stationary in time, non-stationary in frequency, and with a non-separable dispersion function implemented by means of a signal processor comprising: a) To define one or a plurality of dispersion functions, S(v,τ) inherent to the channel c_(bb)(t; τ), b) To determine one or a plurality of the band limiting filter g(τ) according to the maximum bandwidth of the signals to be transmitted, c) To obtain the channel limited in band by convolving the channel with the limiting band filter: h _(bb)(t;τ)=c _(bb)(t;τ)*g(τ)  i. d) To obtain one or a plurality of universal correlation functions R_(U)(τ,ξ) from: i. Defining the maximum delay time τ_(max), ii. Generating one or a plurality of two-dimensional profile that complies with the principle of expansion of subspaces of correlation functions limited in time delay, as an example the universal two-dimensional profile is defined by information of the maximum delays, such as: P _(U)(τ,ξ)=δ(τ−ξ),τ, ξ∈{0,τ_(max)} iii. Generate the universal correlation function through R _(U)(τ, ξ)=∫_(−∞) ^(∞)∫_(−∞) ^(∞) P _(U)(τ,ξ)g(τ)g(ξ)dτdξ e) To obtain the set of basis functions and their corresponding weights of the correlation function R_(U)(τ,ξ) from some matrix factorization technique such as the Cholezky factorization, LU, LDL^(T), QR, etc., that allows to expand the correlation function R_(U)(τ, ξ), as an example, this patent employs the decomposition in terms of eigenvalues and eigenvectors of R_(U)(τ, ξ), f) From a certain threshold of permissible error in the approximation, which is given by the relative power of the eigenvalues, choose the

=1, 2, . . . , L_(min) universal eigen functions,

(τ), and universal eigenvalues,

, which can represent processes with an error less than or equal to that established in the threshold, g) To define one or a plurality of correlation tensors R_(h) _(bb) (t,s; τ,ξ), a determined from measurements, user-defined functions or communication standards, considering a particular shaping filter, h) To make one or a plurality of orthogonalization processes in the time delay domain with the universal functions to obtain the tensor

_(κ)(t,s) from

_(κ)(t,s)=∫_(−∞) ^(∞)∫_(−∞) ^(∞)R_(h) _(bb) (t, s; τ,ξ)

(τ)ψ_(κ)(ξ)dτdξ, where the basis functions

(τ) are obtained from the eigen-decomposition of the universal correlation function, i) To make a rearrangement of the tensor

_(κ)(t,s) as a matrix of correlation matrices or functions

_(κ)(t,s), j) To obtain one or a plurality of a set of functions and their corresponding weights of the matrix of matrices

_(κ)(t,s) from some matrix factorization technique like the Cholezky factorizations, LU, LDL^(T), QR, etc., that allows to expand the matrix of matrices

_(κ)(t,s), as an example, the decomposition of eigenvalues and eigenvectors of the matrix of matrices is used

_(κ)(t,s) as described below: Λ_(k)φ_(k)(s)=∫₀ ^(T) ^(Lmin)

_(κ)(t,s)φ_(k)(t)dt for k=1, 2, . . . , K_(min), where K_(min) is the number of eigenfunctions and eigenvalues required to expand a process ξ(t) with a predefined MSE approximation error to the matrix of correlation matrices

_(κ)(t,s), k) To generate a set of parameters from the set of functions and weights obtained according to the factorization method defined in the claim j), that as an example it is generated K_(min) complex Gaussian random variables ρ_(k) of unit variance to be weighed with its corresponding eigenvalue Λ_(k), thus obtaining the coefficients P_(k)=√{square root over (Λ_(k))}*ρ_(k), l) To perform one or a plurality of stochastic process expansion ξ(t) from a set of functions and their corresponding weights of the matrix of matrices

_(κ)(t,s) based on some matrix factorization technique like the Cholezky factorizations, LU, LDL^(T), QR, etc., as defined in the claim j), in this case the expansion of the stochastic process ξ(t) is implemented as expressed below ${{\xi (t)} = {\sum\limits_{k = 1}^{K_{\min}}\; {P_{k}{\phi_{k}(t)}}}},{0 < t < T_{Lmin}},$ m) To rearrange the process ξ(t) in L_(min) independent sequences

_(l)(t) from the reassignment of each T seconds as correspond to the process number

=1, 2, . . . , L_(min), n) To generate another or another plurality of a process of the type ξ(t) according to the subsection l), which is also rearranged as was done in the subsection m), in this way it results in one or a plurality of processes

_(l)(t) and

_(l)(t) for

=1, 2, . . . , L_(min), y l=1, 2, . . . , ∞, o) To use the patent “Método y aparato de generación de realizaciones de canal estacionarias y no-estacionarias de longitud arbitraria” which explains how the sequences

_(l)(t) and

_(l)(t) are weighted by a window w(t) for each value of l according to ${{{l*T} - \frac{T}{2}} \leq t < {{l*T} + \frac{T}{2}}},{l = 1},2,\ldots \mspace{14mu},\infty,$ and phase shifted by the value of a uniform random variable α, whose value will remain constant for l=1, 2, . . . , ∞, and where

_(l)(t) will also be phase shifted T/2, and then added to generate the L_(min) arbitrarily long stochastic processes

(t), p) To carry out the expansion of the realization of the channel ĥ_(bb)(t; τ) with the set of functions defined according to the factorization technique explained in subsection e), as an example, it is implemented the vector multiplication of the processes

(t) with the set of universal orthogonal functions

(τ), as described below: ${{\hat{h}}_{bb}\left( {t;\tau} \right)} = {\sum\limits_{ϛ = 1}^{L_{\min}}\; {{\beta_{ϛ}(t)}{{\psi_{ϛ}(\tau)}.}}}$ q) To sample ĥ_(bb)(t; τ) by a required sampling period T_(s); thus, a discrete and time-varying linear filter is obtained, where each tap is a discrete process correlated with the others, h_(q)[nT_(s)] for q=0, 1, 2, . . . , Q−1. and r) To convolute the discrete channel with the signal of interest u(t=nT_(s)) for obtaining the output signal y(t=nT_(s)), where one or a plurality of the filter is required that will be used to distort the signal of interest u(t=nT_(s)), and thus provoke the same changes (statistically speaking) that would have been obtained if it were transmitted through a real channel, whose statistics were used in the proposed emulator.
 2. A generic doubly selective channel emulator device, locally non-stationary in time, non-stationary in frequency, and with non-separable dispersion function implemented in a signal processor, which according to claim 1 is capable of using a lower dimensionality in the generation of processes from: a) To define one or a plurality of a filter or two-dimensional window F_(BF)(t,s) which in this case will be the window w (t,s)=w (t)w(s), for each of the temporal correlation matrices

=1, 2, . . . , L_(min) and K=1, 2, . . . , L_(min). b) To perform the Hadamard product between one or a plurality of correlation matrices

_(κ)(t,s) and the two-dimensional window w(t,s), as defined below:

_(κ)(t,s)=

_(κ)(t,s)⊙w(t,s)0<t<T,0<s<T, where the operator ⊙ is defined as the Hadamard product and

=1, 2, . . . , L_(min) and K=1, 2, . . . , L_(min) c) To obtain the set of basis functions and their corresponding weights from the matrix of correlation matrices,

_(κ)(t, s), from some matrix factorization technique like the Cholezky factorizations, LU, LDL^(T), QR, etc., as established in the subsection j) of the claim 1; as an example, the eigen-decomposition of the matrix of correlation matrices is performed,

_(κ)(t,s), thus obtaining the corresponding eigenvalues and eigenvectors as mentioned in paragraph j) of claim 1, and d) To proceed according to the articles k), l), m), n) o), p), q) and r) of claim 1, except that in step o), it should be omitted the procedure of applying the window w(t) to each of the independent realizations for

=1, 2, . . . , L_(min), and l=1, 2, . . . , ∞, of the processes

_(l)(t) and

_(l)(t), since the equivalent windowing process was already applied in paragraph b) of claim
 2. 3. A generic doubly selective channel emulator apparatus, locally non-stationary in time, non-stationary in frequency, and with non-separable scattering function implemented in a signal processor, which according to claim 1 and claim 2, includes: a) One or a plurality of the finite state machine CNTL_1 which performs general control through a group of essential signals “Data_conf_system”, “Instruction”, “Start”, “Rst” y “Clk”, of the initialization processes of required parameters along the architecture blocks, b) One or a plurality of the block GEN_EIGEN_VALFUNC_1 which generates the parameters according to the matrix factorization technique like the Cholezky factorizations, LU, LDL^(T), QR, etc., as established in paragraph k) of claim 1, hence the block GEN_EIGEN_VALFUNC_1 is made up of two submodules: a first submodule GEN_EIGENVAL_1 that contains a Gaussian random variable generator GNRG that produces K_(min) random variables ρ_(k) to be weighted by the eigenvalues Λ_(k) previously stored in a memory MEM_EVAL_1 and thus generate the coefficients P_(k); and a second submodule MEM_EIGEN_FUNC_1 which consists of a block of memory, which stores the sets of eigenfunctions φ_(k)(t) that like the eigenvalues Λ_(k), are obtained from the process of eigen-decomposition of the matrix of matrices

_(κ)(t, s), c) One or a plurality of the module GEN_EXPANSION_MEM_1 that performs the process expansion ξ(t) from the parameters P_(k) and φ_(k)(t) according to the matrix factorization technique as established in article l) of claim 1; it subsequently generates two sets of L_(min) channel realizations

(t) and

(t), of duration T with predefined statistics from the rearrangement of the process ξ(t) according to the process index

=1, 2, . . . , L_(min). d) One or a plurality of the module GEN_EXPANSION_MEM_1 which is made up of three main submodules: i. a submodule MULT_ADD_1 that receives the values of the previously weighed random variables P_(k) and multiplies them with the eigenfunctions φ_(k)(t) to generate a set of processes ξ(t), according to articles l), m) and n) of claim 1, of duration T_(Lmin) as required, obtained through ${{\xi (t)} = {\sum\limits_{k = 1}^{K_{\min}}\; {P_{k}{\phi_{k}(t)}}}},{0 < t < T_{L\; \min}}$ ii. a submodule REAC_ASIFNPROC_1 that performs the rearrangement/assignment of processes of the type ξ(t) to two sequences

_(c)(t) and

(t) as indicated by the process index

=1, 2, . . . , L_(min), and iii. a set of L_(min) submodules DMEM_1, DMEM_2, . . . , DMEM_Kmin which are buffer-like memory blocks that store the sequences

(t) and

(t) as indicated by the process index

=1, 2, . . . , L_(min), and that will be delivered for further processing. e) One or a plurality of the module VENT_SUMPROC_1 that generates L_(min) arbitrarily long stochastic processes with non-stationary statistics

(t) where each of the processes

(t) are generated from the sum of two sequences

(t) and

(t). In this module, the window is applied to each of the sequences

(t) and

(t) each period T, and subsequently, an α delay is applied to both sequences whose value is random at the beginning of the emulation process and subsequently remains constant. In addition, the sequence

(t) is also delayed with respect to the other by T/2 to then add them up and get the process

(t), f) One or a plurality of the module VENT_SUMPROC_1 that generates L_(min) arbitrarily long stochastic processes with non-stationary statistics

(t) according to clause o) of claim 1, and which is comprised of several subblocks. A set of subblocks MULT_W1_SUM, MULT_W2_SUM to MULT_WLmin_SUM, which make a sum of the sequences

(t) and

(t) specifically to obtain the processes

(t) arbitrarily long for

=1, 2, . . . , L_(min). Each of the subblocks contains two submodules, one submodule of phase shift DELAY which is responsible for generating a time shift from a previously configured value, for the case of the branch of the sequence

(t) with a delay that is configured from the value α−T/2, where α and T are parameters previously calculated. For the branch

(t) the delay is only α. A submodule VENT_1 which is a block of memory; such memory is initialized with the values of the windowing function. In the case of opting for the generation of the processes mentioned in claim 2, this window is a constant function, g) One or a plurality of the module MULT_FUNC_UNIVERSAL_1 that performs the vector multiplication of stochastic processes

(t) arbitrarily long with universal basis functions

(t) to expand the generated channel ĥ_(bb)(t; τ). Likewise, it uses an interpolation scheme so that the expansion of the channel generated in ${{{\hat{h}}_{bb}\left( {t;\tau} \right)} = {\sum\limits_{ϛ = 1}^{L_{\min}}\; {{\beta_{ϛ}(t)}{\psi_{ϛ}(\tau)}}}},$ is performed at the sampling rate T_(s) to which the input signal u(t=nT_(s)) is placed from the output of a baseband transmitter apparatus, and h) One or a plurality of the module OPCONVCHNL_1 that performs the convolution operation between the input signal u(t=nT_(s)) and the processes h_(q)[nT_(s)] for q=0, 1, 2, . . . , Q−1, which are generated by the module MULT_FUNC_UNIVERSAL_1.
 4. The method and system, which according to the previous claims, characterized in that any set of orthogonal functions

(τ) can be used, that represents a basis for the band-limited channel, and thus generate the processes

(t) with statistics

_(κ)(t,s)=E{

(t)ζ_(κ)*(s)}, such as, for example, Prolate functions, wavelet functions, universal functions, etc.
 5. The method and system, which according to the previous claims, characterized in that any set of orthogonal functions φ_(k)(t) can be used, that represents a base and thus generate the processes ξ(t) with statistics

_(κ)(t, s) such as, for example, Prolate functions, wavelet functions, universal functions, etc.
 6. The method and system, which according to the preceding claims, characterized in that any set of orthogonal functions {dot over (φ)}(t) can be used, that represents a base and thus generate the processes ξ(t) with statistics

_(κ)(t,s) such as, for example, Prolate functions, wavelet functions, universal functions, etc. 